<?php
	
	date_default_timezone_set('Europe/Rome');

	if(isset($_POST['sAPP']) && !empty($_POST['sAPP'])) {
		$sAPP = $_POST['sAPP'];	
	} else {
		die('ERROR: App not defined');
	}

	require_once "../$sAPP/include/const.inc.php";
	require_once "../$sAPP/include/functions.php";
	require_once "auth.inc.php";
	require_once "conn.inc.php";

	fnGetValueFromPOST();

	$sScript = fnCurrentScript();
	$iAccessLvl = (!is_null(fnGetAccessLvl('table', $sTable)) && fnGetAccessLvl('table', $sTable) == -1 ? fnGetAccessLvl('table', $sTable) : max(fnGetAccessLvl('app'),fnGetAccessLvl('table', $sTable)));
	
	/**
	 * SPIEGAZIONE: se l'accesso a $sTable è negato, lascio come valore di $iAccessLvl -1 (ovvero:
	 * "accesso negato"). Altrimenti tengo valido il valore più grande tra $iAccessLvl per $sTable
	 * (se è stato definito) e $iAccessLvl per sAPP (che sicuramente è stato definito).
	 *
	 */
	
	if (is_allowed('sysop', $iAccessLvl)) {
		
		$sQuery = "SELECT * FROM `settings` WHERE `id` = '$iSetting'";
		$rResult = custom_mysql_query($sQuery);

		if (mysql_num_rows($rResult) == 1) {
		
			if ($sField == 'sField' && $sValue == '') {		
				
				/**
				 * non eseguo nessuna istruzione (il campo 'sField' non potrà mai essere lasciato vuoto)
				 */
				 
			} else {	 
				
				$sQuery = "UPDATE `settings` SET `$sField` = '$sValue' WHERE `id` = '$iSetting'";
				$rResult = custom_mysql_query($sQuery);

			}

			$sQuery = "SELECT `$sField` FROM `settings` WHERE `id` = '$iSetting'";
			$rResult = custom_mysql_query($sQuery);

			if (mysql_num_rows($rResult) == 1) {

				$aRow = mysql_fetch_assoc($rResult);
				echo $aRow[$sField];
				die();

			} else {
				
				/**
				 * c'è qualcosa che non ha funzionato come avrebbe dovuto...
				 */
				
				fnUpdateLog("NOT FOUND", $iSetting, 'settings','E');
	
			} 

		}  else {
			
			/**
			 * c'è qualcosa che non ha funzionato come avrebbe dovuto...
			 */
			
			fnUpdateLog("NOT FOUND", $iSetting, 'settings','E');

		}

	} else {
		
		fnUpdateLog('LOW RIGHTS', 0, 'settings','S');

	}
	
?>